//两个版本的进度条程序

//修饰重装版（更完善、全面）:
#define _CRT_SECURE_NO_WARNINGS 1
#include"processBar.h"
#include<stdio.h>
#include<string.h>
#include<unistd.h>

//进度条
char bar[NUM];    //全局数组默认初始化为0

//进度进行的旋转标志
const char* icon = "|/-\\";


//把当前比率转化为进度条,并为下一次加一个小格（一个百分点）
//rate[0,100]
void processBar(int rate)
{
    if (rate < 0 || rate>100)   return;
    int len = strlen(icon);

    printf(ANSI_COLOR_GREEN"[%-100s]"ANSI_COLOR_END"[%d%%][%c]\r", bar, rate, icon[rate % len]);
    fflush(stdout);

    bar[rate++] = STYLE;
    if (rate <= 99)   bar[rate] = STYLE_TAIL; 
}

void initbar()
{
    memset(bar, '\0', sizeof(bar));
}


//进度条程序的简单版（原理版）:
//#include"processBar.h"
//#include<unistd.h>
//  
//int main()
//{
//    processBar();
//
//    return 0;
//}

